package magicboard.model
{
  import flash.display.Graphics;
  
	/**
	 * Basic geometry object used as base class.
	 * This class defines set of interefaces common to all geometry objects
	 */
	public interface GeometryObject
	{
	  // --------------------------------------------------------------------------------------------
	  /** Draw this object on given Graphics object  */
		function draw(g:Graphics):void;

	  // --------------------------------------------------------------------------------------------
	  /** get length of the line  */
		function getLineLength():Number;

	  // --------------------------------------------------------------------------------------------
	  /** Convert object to string  */
		function toString():String;

	  // --------------------------------------------------------------------------------------------
	  /** Serialize object to string */
		function saveToString():String;

	  // --------------------------------------------------------------------------------------------
	  /** Get object type as string */
		function getType():String;

	}
}